1. Field of the Invention
The present invention relates to techniques for determining power consumption in a computer system. More specifically, the present invention relates to a method and apparatus for generating a dynamic trace of power consumption for a computer system.
2. Related Art
Large businesses often maintain datacenters containing dozens or even hundreds of servers that provide various computational services. Since excessive heat can cause premature failure of components within servers, providing sufficient cooling capacity to remove the heat generated by these servers is a primary concern for managers of these datacenters.
At the present moment, large datacenters typically over-provision cooling capacity. More specifically, large datacenters provision cooling capacity by adding up the faceplate power ratings for each server in the datacenter and then providing sufficient cooling capacity to meet this estimated maximum level of power consumption. Typically, the faceplate power rating is higher than it is possible to achieve because the faceplate power ratings are extremely conservative estimates of the maximum theoretically possible power consumption of the individual components and the field-replaceable units (FRUs) within a server.
Note that the faceplate power rating is typically determined by adding up the power rating of each individual component and each FRU within the server. Therefore, the conservatively-high power rating estimates for these individual components and FRUs are reflected in the faceplate power rating.
Furthermore, average server utilization factors are low. As a result, datacenters are being designed to provide an amount of cooling capacity that matches a maximum theoretically possible power consumption, even though the actual cooling requirements may never exceed half of this maximum cooling capacity. Thus, it is desirable to more accurately measure the dynamic power consumption of servers to prevent needless and expensive over-provisioning of cooling systems for the servers.
One technique for measuring the dynamic power consumption of a server is to place a hardware power monitor between an external power supply and the server. Unfortunately, a hardware power monitor is expensive, typically costing many thousands of dollars. Furthermore, a hardware power monitor only measures the total power entering the server and hence cannot report on the power consumption of the individual components within the server.
Hence, what is needed is a method and an apparatus for generating a dynamic trace of power consumption in a computer system without the problems described above.